This invention relates, in general, to facilitating processing within a computing environment, and in particular, to improving efficiency within the computing environment when using accelerators to perform specific processing functions.
Accelerators are used today to increase the processing capabilities of a server. In particular, accelerators coupled to the server are optimized to perform certain functions, enabling those functions to be performed at higher speeds than if those functions were performed by the server. When a function is reached in a program executed by the server, the server sends a request to an accelerator to perform the function. The accelerator performs the function and forwards the result back to the server. The server either performs further processing on the returned result or simply forwards the result to another accelerator, which then performs processing on the result and sends the result back to the server, again.
These loop-back traversals to the server are performed due to call return semantics popular in certain acceleration structures.